using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

public partial class logged_Comunidade : System.Web.UI.Page
{

    private ActivUFRJ.Classes.Usuario.Usuario usuario = ActivUFRJ.Utilitarios.Usuario.GetSessao();
    private ActivUFRJ.Classes.Comunidade.Comunidade comunidade;

    protected void Page_Load(object sender, EventArgs e)
    {

        // valida a sessao do usuario
        ActivUFRJ.Utilitarios.Usuario.ValidarSessao(usuario);

        // valida o artefato
        comunidade = new ActivUFRJ.Classes.Comunidade.Comunidade(Request.QueryString["ID"]);
        ActivUFRJ.Utilitarios.Comunidade.ValidarComunidade(comunidade);


        if (!IsPostBack)
        {
            CarregarAvisos();
            CarregarControles();
        }
        MostrarAba();
    }

    private void MostrarAba()
    {
        int indiceAba = 0;
        string categoria;
        try
        {
            categoria = Request.QueryString["categ"];
            if (categoria == "ExibirAvisos") indiceAba = 1;
        }
        catch { }
        MultiViewComentario.ActiveViewIndex = indiceAba;
    }

    private void CarregarControles()
    {
        // link da esquerda....
        hlVoltarAPaginaDaComunidade.NavigateUrl = "Comunidade.aspx?ID=" + comunidade.ID.ToString();
        hlVoltarAPaginaComunidadeSalva.NavigateUrl = "Comunidade.aspx?ID=" + comunidade.ID.ToString();

        // mensagem de, para e em:
        lblDe.Text = usuario.NomeCompleto + " (" + usuario.Email + ")";
        lblNomeUsuario.Text = usuario.NomeCompleto;
        lblPara.Text = comunidade.Autor.NomeCompleto + " (" + comunidade.Autor.Email + ")";
        lblEm.Text = System.DateTime.Now.ToLongDateString();

    }

    // cadastra o aviso
    protected void btnEnviar_Click(object sender, EventArgs e)
    {
        ActivUFRJ.Classes.Comunidade.Aviso aviso = new ActivUFRJ.Classes.Comunidade.Aviso();

        aviso.Autor = usuario;
        aviso.Comunidade = comunidade;
        aviso.DataRegistro = System.DateTime.Now;
        aviso.Descricao = tbComentario.Text;
        aviso.Status = true;
        aviso.Titulo = tbTitulo.Text;

        bool salvo = aviso.SalvarAviso(true);

        if (salvo)
        {
            MultiViewEnviarMensagem.ActiveViewIndex = 1;
        }
        else Server.Transfer(ActivUFRJ.Sistema.Paginas.DefaultErrorPage);
    }

    protected void btnCancelar_Click(object sender, EventArgs e)
    {
        Response.Redirect("Comunidade.aspx?ID=" + comunidade.ID.ToString());
    }

    private void CarregarAvisos()
    {
        dataListAvisos.DataSource = ActivUFRJ.Classes.Comunidade.MgrAviso.GetAvisosDT(comunidade, -1, false);
        dataListAvisos.DataBind();

        if (dataListAvisos.Items.Count == 0) lblNenhumAviso.Visible = true;
    }

    protected void btnRetornar_Click(object sender, EventArgs e)
    {
        Response.Redirect("Comunidade.aspx?ID=" + comunidade.ID.ToString());
    }

    protected void lbLerAvisos_Click(object sender, EventArgs e)
    {
        MultiViewComentario.ActiveViewIndex = 1;
    }


    protected void lnbCadastrarAviso02_Click(object sender, EventArgs e)
    {
        MultiViewComentario.ActiveViewIndex = 0;
    }
}
